package com.stylefeng.guns.util;
import java.io.InputStream;
import java.util.List;
import com.stylefeng.guns.modular.system.model.UserCw;
/**
 * 导入Excel文件处理逻辑
 * @author hyj 2016-10-25
 *
 * */
public class CommonImportExcelServiceController {
	/**
	 * 导入昆航数据信息
	 * @return 
	 * @throws Exception
	 */	
	public static String importKhOrder(InputStream is,UserCw currentUser,List<UserCw> listOrder)throws Exception {
		return null;
		/*String result="";
		Workbook wb1 = null;
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  
		int index=0;
		try {
			wb1 = XlsUtils.getWorkbook(is);
			Sheet rs1 = XlsUtils.getSheet(wb1, 0);
			//添加自己的业务逻辑  并且写入数据库				
			int row_len=rs1.getRows();				
			for(int i=2;i<row_len;i++){
				index=i;
				CwKhOrder khOrder=new CwKhOrder();			
				//订单编号
				String b_Str=XlsUtils.getCellValue(rs1,0,i).trim();
				if(b_Str.length()==0){
					listOrder.clear();
					listOrder=null;
					result+= ""+(i+1)+"行的[主订单编号]不能为空！<br/>";
			    }						
				khOrder.setCkoOrderId(b_Str);
				//子订单编号  
				b_Str = XlsUtils.getCellValue(rs1, 1, i).trim();		
				if(b_Str.length()==0){
					listOrder.clear();
					listOrder=null;
					result+= ""+(i+1)+"行的[子订单编号]不能为空！<br/>";
			    }						
				khOrder.setCkoAccompanyId(b_Str);
				//乘车/接机类型，1接机，2送机
				b_Str = XlsUtils.getCellValue(rs1, 2, i).trim();
				if (!(b_Str.equals("送机") || b_Str.equals("接机"))) {
					listOrder.clear();
					listOrder = null;
					result+= ""+ (i + 1) + "行的[乘车类型]只能是【接机】或者【送机】！<br/>";
				}
				khOrder.setCkoTakeType(b_Str.replaceAll("接机", "1").replaceAll("送机", "2"));
				//车辆类型,1拼车,2专车,3豪华车
				b_Str = XlsUtils.getCellValue(rs1, 3, i).trim();
				if (!(b_Str.equals("专车") || b_Str.equals("拼车") || b_Str.equals("豪车"))) {
					listOrder.clear();
					listOrder = null;
					result+= ""+  (i + 1) + "行的[服务类型]只能是【专车】或者【拼车】或者【豪车】！<br/>";
				}
				khOrder.setCkoCarType(b_Str.replaceAll("专车", "1").replaceAll("拼车", "2").replaceAll("豪车", "3"));
				//乘车人数	
				b_Str = XlsUtils.getCellValue(rs1, 4, i).trim();
				if (b_Str.length()== 0 || Integer.parseInt(b_Str)<1) {
					listOrder.clear();
					listOrder = null;
					result+= ""+  (i + 1) + "行的[乘车人数]必须大于零！<br/>";
				}
				khOrder.setCkoTakerNum(b_Str);
				
				//下单时间
				b_Str = XlsUtils.getCellValue(rs1, 5, i).trim();
				if (b_Str.length()>10) {
					khOrder.setCkoCreateDate(b_Str);
				}
				
				//预约时间
				b_Str = XlsUtils.getCellValue(rs1, 6, i).trim();
				if (b_Str.length()<10) {
					listOrder.clear();
					listOrder = null;
					result+="" + (i + 1) + "行的[预定乘车时间]格式必须是yyyy-mm-dd hh:mm:ss！<br/>";
				}
				khOrder.setCkoPreTime(b_Str);
				
				//出发地
				b_Str = XlsUtils.getCellValue(rs1, 7, i).trim();				
				khOrder.setCkoStartPlace(b_Str);
				//目的地
				b_Str = XlsUtils.getCellValue(rs1, 8, i).trim();				
				khOrder.setCkoEndPlace(b_Str);
				//订单状态 0未使用 1使用中 2已使用 3已取消
				b_Str = XlsUtils.getCellValue(rs1, 10, i).trim();
				if (!(b_Str.equals("未使用") || b_Str.equals("使用中") || b_Str.equals("已使用")|| b_Str.equals("已取消"))) {
					listOrder.clear();
					listOrder = null;
					result+="" + (i + 1) + "行的[订单状态]只能是【未使用】或者【使用中】或者【已使用】或者【已取消】！<br/>";
				}
				khOrder.setCkoOrderStatus(b_Str.replaceAll("未使用", "0").replaceAll("使用中", "1").replaceAll("已使用", "2").replaceAll("已取消", "3"));
				//姓名
				b_Str = XlsUtils.getCellValue(rs1, 11, i).trim();				
				khOrder.setCkoOrderName(b_Str);				
				//证件类型
				b_Str = XlsUtils.getCellValue(rs1, 12, i).trim();				
				khOrder.setCkoIdNoType(b_Str);
				//证件号码
				b_Str = XlsUtils.getCellValue(rs1, 13, i).trim();				
				khOrder.setCkoIdNo(b_Str);
				//电话
				b_Str = XlsUtils.getCellValue(rs1, 14, i).trim();
				if (b_Str.length()<10) {
					listOrder.clear();
					listOrder = null;
					result+="" + (i + 1) + "行的[手机号码]不能为空！<br/>";
				}
				khOrder.setCkoPhone(b_Str);
				//卡票号
				b_Str = XlsUtils.getCellValue(rs1, 15, i).trim();				
				khOrder.setCkoTicketNo(b_Str);
			    //身份标识0成人,1儿童
				b_Str = XlsUtils.getCellValue(rs1, 16, i).trim();	
				if(!(b_Str.equals("成人") || b_Str.equals("儿童"))) {
					listOrder.clear();
					listOrder = null;
					result+="" + (i + 1) + "行的[身份标识]只能是【接机】或者【送机】！<br/>";
				}
				khOrder.setCkoPassengerType(b_Str.replaceAll("成人", "0").replaceAll("儿童", "1"));
				
				//会员的等级
				b_Str = XlsUtils.getCellValue(rs1, 17, i).trim();				
				khOrder.setCkoMemberLevelFlag(b_Str);
				//18年龄 19性别 20户籍
				//航班号
				b_Str = XlsUtils.getCellValue(rs1, 21, i).trim();				
				khOrder.setCkoFlightNo(b_Str);
				//航段
				b_Str = XlsUtils.getCellValue(rs1, 22, i).trim();				
				khOrder.setCkoFlightLegCn(b_Str);
				//起飞时间
				b_Str = XlsUtils.getCellValue(rs1, 23, i).trim();				
				khOrder.setCkoFlightDate(b_Str);
				//落地时间
				b_Str = XlsUtils.getCellValue(rs1, 24, i).trim();				
				khOrder.setCkoFlightArrDate(b_Str);
				
				//司机姓名
				b_Str = XlsUtils.getCellValue(rs1, 25, i).trim();
				khOrder.setCkoDriverName(b_Str);
				//车牌号
				b_Str = XlsUtils.getCellValue(rs1, 27, i).trim();				
				khOrder.setCkoCarId(b_Str);
				
				
				khOrder.setCkoEndCoord("");
				khOrder.setCkoStartCoord("");
				//乘车状态乘车状态(1正在预订 2正在去接 3乘客上车 4乘客下车 )
				b_Str = XlsUtils.getCellValue(rs1, 28, i).trim();	
				if (!(b_Str.equals("正在预订") || b_Str.equals("正在去接") || b_Str.equals("乘客上车") || b_Str.equals("乘客下车"))) {
					listOrder.clear();
					listOrder = null;
					result+="" + (i + 1) + "行的[身份标识]只能是【正在预订】或者【正在去接】或者【乘客上车】或者【乘客下车】！<br/>";
				}
				khOrder.setCkoTakeStatus(b_Str.replaceAll("正在预订", "1").replaceAll("正在去接", "2").replaceAll("乘客上车", "3").replaceAll("乘客下车", "4"));
				
				//出发地坐标
				//目的地坐标
			    //最小里程
				b_Str = XlsUtils.getCellValue(rs1, 35, i).trim();				
				khOrder.setCkoMinMileage(b_Str);
				//最低价格
				b_Str = XlsUtils.getCellValue(rs1, 36, i).trim();				
				khOrder.setCkoMinPrice(b_Str);
				//超里程单价
				b_Str = XlsUtils.getCellValue(rs1, 37, i).trim();				
				khOrder.setCkoUnitPrice(b_Str);
				//里程数
				b_Str = XlsUtils.getCellValue(rs1, 38, i).trim();				
				khOrder.setCkoDistance(b_Str);
				//超里程费用
				b_Str = XlsUtils.getCellValue(rs1, 40, i).trim();				
				khOrder.setCkoAboveFee(b_Str);
				//订单金额
				b_Str = XlsUtils.getCellValue(rs1, 43, i).trim();				
				khOrder.setCkoTotal(b_Str);
				//支付状态 0未支付|1已支付|2已退款|3退款申请中
				b_Str = XlsUtils.getCellValue(rs1, 44, i).trim();	
				if(!(b_Str.equals("未支付") || b_Str.equals("已支付") || b_Str.equals("已退款") || b_Str.equals("退款申请中"))) {
					listOrder.clear();
					listOrder = null;
					result+=""+ (i + 1) + "行的[身份标识]只能是【未支付】或者【已支付】或者【已退款】或者【退款申请中】！<br/>";
				}
				khOrder.setCkoPayStatus(b_Str.replaceAll("未支付", "0").replaceAll("已支付", "1").replaceAll("已退款", "2").replaceAll("退款申请中", "3"));
				
				listOrder.add(khOrder);
			}
		} catch (Exception e) {
			throw new RuntimeException(result+"导入数据时出错,"+(index+1)+"数据错误， 详细:\n "+e.getMessage());
		}finally {
			 if(wb1!=null){
				 wb1.close();
			 }
		}	
		return result;
		*/
	}
	/**
	 * 导入用户信息
	 * @return 
	 * @throws Exception
	 */	
	public static String importUserInf(InputStream is, UserCw currentUser, List<UserCw> listUser)throws Exception {

		return null;
	}
	public static String importSimInf(InputStream is,UserCw currentUser,List listSimInf){
		
		return "";
	}
	
}
